package osResourceMonitor

import "github.com/shirou/gopsutil/host"

type BootEr interface {
	Time(s any) (any, error)
	TimeWithContext(s any) (any, error)
}

type HostInfoEr interface {
	Id(s any) (any, error)
	IdWithContext(s any) (any, error)
	Info(s any) (any, error)
	InfoWithContext(s any) (any, error)
}

type KernelEr interface {
	Arch(s any) (any, error)
	Version(s any) (any, error)
	VersionWithContext(s any) (any, error)
}
type PlatFromEr interface {
	Information(s any) (any, error)
	InformationWithContext(s any) (any, error)
}
type SensorsTemperEr interface {
	Atures(s any) (any, error)
	AturesWithContext(s any) (any, error)
}
type UptimeEr interface {
	Uptime(s any) (any, error)
	UptimeWithContext(s any) (any, error)
}
type UserEr interface {
	Users(s any) (any, error)
	UsersWithContext(s any) (any, error)
}
type VirtualizationEr interface {
	Virtualization(s any) (any, error)
	VirtualizationWithContext(s any) (any, error)
}
type HostEr interface {
	BootEr
	HostInfoEr
	KernelEr
	PlatFromEr
	SensorsTemperEr
	UptimeEr
	UserEr
	VirtualizationEr
}
type HostLinux struct {
}

func NewHostObject() HostEr {
	var h HostEr
	h = HostLinux{}
	return h
}
func (h HostLinux) Id(s any) (any, error) {
	host.HostID()
	return nil, nil
}
func (h HostLinux) IdWithContext(s any) (any, error) {
	//host.HostIDWithContext()
	return nil, nil
}
func (h HostLinux) Info(s any) (any, error) {
	host.Info()
	return nil, nil
}
func (h HostLinux) InfoWithContext(s any) (any, error) {
	//host.InfoWithContext()
	return nil, nil
}
func (h HostLinux) Time(s any) (any, error) {
	host.BootTime()
	return nil, nil
}
func (h HostLinux) TimeWithContext(s any) (any, error) {
	//host.BootTimeWithContext()
	return nil, nil
}
func (h HostLinux) Arch(s any) (any, error) {
	host.KernelArch()
	return nil, nil
}
func (h HostLinux) Version(s any) (any, error) {
	host.KernelVersion()
	return nil, nil
}
func (h HostLinux) VersionWithContext(s any) (any, error) {
	//host.KernelVersionWithContext()
	return nil, nil
}
func (h HostLinux) Information(s any) (any, error) {
	host.PlatformInformation()
	return nil, nil
}
func (h HostLinux) InformationWithContext(s any) (any, error) {
	//host.PlatformInformationWithContext()
	return nil, nil
}
func (h HostLinux) Atures(s any) (any, error) {
	host.SensorsTemperatures()
	return nil, nil
}
func (h HostLinux) AturesWithContext(s any) (any, error) {
	//host.SensorsTemperaturesWithContext()
	return nil, nil
}
func (h HostLinux) Uptime(s any) (any, error) {
	host.Uptime()
	return nil, nil
}
func (h HostLinux) UptimeWithContext(s any) (any, error) {
	//host.UptimeWithContext()
	return nil, nil
}
func (h HostLinux) Users(s any) (any, error) {
	host.Users()
	return nil, nil
}
func (h HostLinux) UsersWithContext(s any) (any, error) {
	//host.UsersWithContext()
	return nil, nil
}
func (h HostLinux) Virtualization(s any) (any, error) {
	host.Virtualization()
	return nil, nil
}
func (h HostLinux) VirtualizationWithContext(s any) (any, error) {
	//host.VirtualizationWithContext()
	return nil, nil
}
